﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using QLNS.Class;
namespace QLNS.NghiepVu
{
    public partial class frmTrinhDoTinHoc : Form
    {
        DB Cn = new DB();
        string tag = "";
        public frmTrinhDoTinHoc()
        {
            InitializeComponent();
        }
        private void load_button(string tag)
        {
            if (tag == "them")
            {
                btnThem.Enabled = false;
                btnSua.Enabled = false;
                btnXoa.Enabled = false;

                btnLuu.Enabled = true;
                btnHuy.Enabled = true;



                txtMaTrinhDoTinHoc.Enabled = false;

                txtTenTrinhDoTinHoc.Text = "";
                txtTenTrinhDoTinHoc.Enabled = true;


            }
            else if (tag == "sua")
            {
                btnThem.Enabled = false;
                btnSua.Enabled = false;
                btnXoa.Enabled = false;

                btnLuu.Enabled = true;
                btnHuy.Enabled = true;


                txtTenTrinhDoTinHoc.Enabled = true;
                txtMaTrinhDoTinHoc.Enabled = false;

            }
            else
            {
                btnThem.Enabled = true;
                btnSua.Enabled = true;
                btnXoa.Enabled = true;

                btnLuu.Enabled = false;
                btnHuy.Enabled = false;
                txtMaTrinhDoTinHoc.Enabled = false;
                txtTenTrinhDoTinHoc.Enabled = false;

            }
        }
        private void load_grid()
        {
            if (Cn.KetNoi())
            {
                DataTable tbl = Cn.getTable("select row_number() over(order by MaTDTinHoc) as STT,* from TrinhDoTinHoc");

                dtgTrinhDoTinHoc.DataSource = tbl;
            }
        }
        private void btnThem_Click(object sender, EventArgs e)
        {
            {
                tag = "them";
                load_button(tag);
                txtMaTrinhDoTinHoc.Text = Cn.SinhMa("MaTDTinHoc", "TrinhDoTinHoc", "TH");
            }
        }
        private void btnSua_Click(object sender, EventArgs e)
        {
            {
                tag = "sua";
                load_button(tag);
            }
        }
        private void btnXoa_Click(object sender, EventArgs e)
        {
            DialogResult h = MessageBox.Show("Bạn có muốn xóa hay không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Error);
            if(h==DialogResult.Yes)
                 {
            if (dtgTrinhDoTinHoc.RowCount > 0)
            {
                Cn.KetNoi();
                Cn.Delete_Table("TrinhDoTinHoc", "MaTDTinHoc='" + txtMaTrinhDoTinHoc.Text + "'");
                load_grid();
                tag = "";
                load_button(tag);
                MessageBox.Show("Xóa dữ liệu thành công");
            }
                 }
        }
        private void btnLuu_Click(object sender, EventArgs e)
        {
            if (Cn.KetNoi())
            {
                if (tag == "them")
                {

                    if (txtTenTrinhDoTinHoc.Text == "")
                    {
                        MessageBox.Show(" Bạn chưa nhập tên trình độ tin học");
                        txtTenTrinhDoTinHoc.Focus();
                        return;
                    }
                    else
                    {
                        string ketqua = Cn.LayDuLieu("SELECT TDTinHoc from TrinhDoTinHoc WHERE TDTinHoc = N'" + txtMaTrinhDoTinHoc.Text + "'");
                        if (ketqua != "")
                        {
                            MessageBox.Show("Tên trình độ tin học đã tồn tại");
                            txtTenTrinhDoTinHoc.Focus();
                            return;
                        }
                    }
                    Cn.KetNoi();
                    Cn.Insert_Table("TrinhDoTinHoc", "MaTDTinHoc,TDTinHoc",
                        "'" + txtMaTrinhDoTinHoc.Text + "',N'" + txtTenTrinhDoTinHoc.Text + "'");

                }
                else
                {

                    if (txtTenTrinhDoTinHoc.Text == "")
                    {
                        MessageBox.Show(" Bạn chưa nhập tên trình độ tin học");
                        txtTenTrinhDoTinHoc.Focus();
                        return;
                    }
                    else
                    {
                        string ketqua = Cn.LayDuLieu("SELECT TDTinHoc from TrinhDoTinHoc WHERE TDTinHoc = N'" + txtTenTrinhDoTinHoc.Text + "'");
                        if (ketqua != "")
                        {
                            MessageBox.Show("Tên trình độ tin học đã tồn tại");
                            txtTenTrinhDoTinHoc.Focus();
                            return;
                        }
                    }
                    Cn.KetNoi();
                    Cn.Update_Table("TrinhDoTinHoc", "TDTinHoc=N'" + txtTenTrinhDoTinHoc.Text + "'", "MaTDTinHoc='" + txtMaTrinhDoTinHoc.Text + "'");
                }
                tag = "";
                load_button(tag);
                load_grid();
            }
        }
        private void btnHuy_Click(object sender, EventArgs e)
        {
            tag = "";
            load_button(tag);
        }
        private void btnThoat_Click(object sender, EventArgs e)
        {
            DialogResult h = MessageBox.Show("Bạn có muốn thoát không", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Error);
            if (h == DialogResult.Yes)
            {
                this.Close();
            }
        }
        private void dtgTrinhDoTinHoc_SelectionChanged(object sender, EventArgs e)
        {
            if (dtgTrinhDoTinHoc.RowCount > 0)
            {
                txtMaTrinhDoTinHoc.Text = dtgTrinhDoTinHoc.CurrentRow.Cells["MaTDTinHoc"].Value.ToString();
                txtTenTrinhDoTinHoc.Text = dtgTrinhDoTinHoc.CurrentRow.Cells["TDTinHoc"].Value.ToString();
            }
        }
        private void frmTrinhDoNN_Load(object sender, EventArgs e)
        {
            tag = "";
            load_button(tag);
            load_grid();
        }
    }
}
